<template>
    <scroll-view style="height: 100%;" :scroll-into-view="intoIndex" scroll-y="true" scroll-with-animation @scroll="scroll">
        <view class="network">
            <view :id="'slot' + index" v-for="(key, index) in formKeys" :key="index">
                <view class="item-title">
                    <view class="title">
                        <view class="txt">
                            {{ key }}
                        </view>
                        <view class="bg"></view>
                    </view>
                    <ImgUpload :title="key" :uploadParams="{...uploadParams,type_name:key}" :fileList="form[key].fileList" @change="(val) => fileChange(val, key)">
                    </ImgUpload>
                </view>

                <view class="child" v-for="(ckey, cindex) in getFilds(form[key])" :key="cindex">
                    <view class="child-title">
                        <view class="title">{{ ckey }}</view>
                    </view>
                    <view class="dec">
                        {{ form[key][ckey]['检测内容'] }}
                    </view>
                    <textarea :maxlength="-1"  v-model="form[key][ckey]['实测记录']" class="my-textarea" placeholder="实测记录"></textarea>
                </view>

            </view>

        </view>
    </scroll-view>
</template>

<script>
export default {
    props: {
        intoIndex: {
            type: String,
            default: ''
        },
        list: {
            type: Array,
            default: []
        },
        uploadParams:{
         type:Object,
         default:{}
      },
      defaultValue:{
        type:Object,
        default:null
      }
    },
    // 局部注册的组件
    components: {},
    computed: {
        formKeys() {
            return Object.keys(this.form)
        },
    },
    data() {
        return {
            fileList: [],
            canUse: '0',
            form: {
                '消防供电配电': {
                    fileList: [],
                    "消防配电": {
                        '检测内容': '试验主、备电切换功能',
                        '实测记录': ''
                    }
                },
                "火灾报警系统": {
                    fileList: [],
                    "火灾报警探测器": {
                        '检测内容': '试验报警功能',
                        '实测记录': ''
                    },
                    "手动报警按钮": {
                        '检测内容': '试验报警功能',
                        '实测记录': ''
                    },
                    "警报装置": {
                        '检测内容': '试验报警功能',
                        '实测记录': ''
                    },
                    "报警控制器": {
                        '检测内容': '试验火警报警功能、故障报警功能、火警优先功能、打印机打印功能、火灾显示盘和CRT显示器的显示功能',
                        '实测记录': ''
                    },
                    "联动控制设备": {
                        '检测内容': '试验控制功能和反馈功能',
                        '实测记录': ''
                    },
                },
                '消防供水': {
                    fileList: [],
                    "消防水池": {
                        '检测内容': '核对储水量',
                        '实测记录': ''
                    },
                    "消防水箱": {
                        '检测内容': '核对储水量',
                        '实测记录': ''
                    },
                    "稳(增)压泵及气压水罐": {
                        '检测内容': '试验启泵、停泵时的压力工况',
                        '实测记录': ''
                    },
                    "消防水泵": {
                        '检测内容': '试验启泵和主、备泵启动功能',
                        '实测记录': ''
                    },
                },
                '消火栓': {
                    fileList: [],
                    "室内消火栓": {
                        '检测内容': '试验屋顶消火栓放水及静压',
                        '实测记录': ''
                    },
                    "室外消火栓": {
                        '检测内容': '试验室外消火栓放水及静压',
                        '实测记录': ''
                    },
                    "启泵按钮": {
                        '检测内容': '试验远距离启泵功能',
                        '实测记录': ''
                    },
                },
                '自动喷水系统': {
                    fileList: [],
                    "报警阀组": {
                        '检测内容': '试验末端放水阀放水及压力开关动作信号',
                        '实测记录': ''
                    },
                    "水流指示器": {
                        '检测内容': '核对反馈信号',
                        '实测记录': ''
                    }
                },
                '气体灭火系统': {
                    fileList: [],
                    "瓶组与储罐": {
                        '检测内容': '核对灭火剂储存量',
                        '实测记录': ''
                    },
                    "气体灭火控制设备": {
                        '检测内容': '试验模拟启动功能',
                        '实测记录': ''
                    }
                },
                '机械加压送风系统': {
                    fileList: [],
                    "风机": {
                        '检测内容': '试验风机启动功能',
                        '实测记录': ''
                    },
                    "送风口": {
                        '检测内容': '核对送风口风速',
                        '实测记录': ''
                    },
                },
                '机械排烟系统': {
                    fileList: [],
                    "风机": {
                        '检测内容': '试验风机启动功能',
                        '实测记录': ''
                    },
                    "排烟阀、电动排烟窗": {
                        '检测内容': '试验启动排烟阀、电动排烟窗；核对排烟口风速',
                        '实测记录': ''
                    }
                },
                '应急照明': {
                    fileList: [],
                    "应急照明": {
                        '检测内容': '试验切断正常供电',
                        '实测记录': ''
                    }
                },
                '疏散指示标志': {
                    fileList: [],
                    "疏散指示标志": {
                        '检测内容': '试验切断正常供电',
                        '实测记录': ''
                    }
                },
                '应急广播系统': {
                    fileList: [],
                    "扩音器": {
                        '检测内容': '试验启动和切换功能',
                        '实测记录': ''
                    },
                    "扬声器": {
                        '检测内容': '测试音量',
                        '实测记录': ''
                    }
                },
                '消防专用电话': {
                    fileList: [],
                    "消防专用电话": {
                        '检测内容': '试验通话质量',
                        '实测记录': ''
                    },
                },
                '防火分隔': {
                    fileList: [],
                    "防火门": {
                        '检测内容': '试验启闭功能',
                        '实测记录': ''
                    },
                    "防火卷帘": {
                        '检测内容': '试验手动、机械应急和自动控制功能',
                        '实测记录': ''
                    },
                    "电动防火阀": {
                        '检测内容': '试验关闭功能',
                        '实测记录': ''
                    },
                },
                '消防电梯': {
                    fileList: [],
                    "消防电梯": {
                        '检测内容': '试验按钮迫降和启动控制功能',
                        '实测记录': ''
                    }
                },
                '灭火器': {
                    fileList: [],
                    "灭火器": {
                        '检测内容': '核对选型、压力和有效期',
                        '实测记录': ''
                    }
                },
            },

        }
    },
    // 组件方法
    methods: {
        getFilds(obj) {
            let arr = Object.keys(obj)
            var index = arr.indexOf('fileList');
            if (index !== -1) {
                arr.splice(index, 1);
            }
            return arr
        },
        scroll(e) {
            //console.log(e.detail.scrollTop)
        },
        fileChange(val, key = '') {
            this.form[key].fileList = val
        },
        canUseChange(val, key = '') {
            this.canUse = val
        }

    },

    watch: {
        form: {
            handler(val) {
                this.$emit('getForm', val)
            },
            deep: true,
            immediate: true
        },
        defaultValue:{
            handler(val) {
                this.form=val
            },
        }
    }
}
</script> 

<style scoped lang="scss" src="./assets/index.scss"></style>
